package com.dnjn.happiness.biz.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dnjn.happiness.biz.domain.Appraise;
import com.dnjn.happiness.biz.domain.vo.StatisticalAnalysisAppriseVO;
import com.dnjn.happiness.biz.domain.vo.StatisticalAnalysisVO;
import com.dnjn.happiness.common.core.model.ModelHappinessScores;

import java.util.List;

/**
 * <p>
 * 评价表 服务类
 * </p>
 *
 * @author Amber
 * @since 2023-10-04
 */
public interface IAppraiseService extends IService<Appraise> {


    List<ModelHappinessScores> getAppraiseHappinessScores(Long userId, String tableName);

    Page<Appraise> selectPageX(Appraise appraise, Page page);

    Page<StatisticalAnalysisVO> selectStatisticalAnalysisApprise(StatisticalAnalysisAppriseVO vo, Page<Object> happiness_score);


    List<StatisticalAnalysisVO> AnalysisPage(Page<Object> happiness_score);

    List<StatisticalAnalysisVO> ListPageSerch(StatisticalAnalysisAppriseVO vo, Page<Object> happiness_score);

    List<StatisticalAnalysisVO> ListPageSerchX(StatisticalAnalysisAppriseVO vo, Page<Object> happiness_score);


    Double getHappinessScoresViewAppriseNew(Long userId, Double base_percent, Double x);

    Page<Appraise> getAppraisePageByFromUserId(Appraise appraise, Page page);

    List<Appraise> queryAppraiseListByUserId(Appraise appraise);

    Page<Appraise> selectPageNew(Appraise appraise, Page page);

    boolean addAppraiseNew(Appraise appraise);

    List<Appraise> getAppraiseRecords(Long userId, String time);

}
